Electronic device, method for restricting use of electronic device, and non-transitory computer-readable recording medium

ABSTRACT

A method for restricting use of an electronic device including a display part includes the steps of a) designating an application identification data (ID) of a display target to be displayed by the display part, b) switching the display target to another display target by designating another application ID, c) instructing the display part to display an operation screen based on screen data corresponding to the application ID designated in step a), d) receiving a request for the switching of step b) from a use restriction application, e) determining whether the switching of step b) is possible, and f) instructing the display part to display another operation screen based on another screen data corresponding to the another application ID in a case where the switching of step b) is determined to be possible in step e).

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Continuation Application of the U.S. patentapplication Ser. No. 13/033,397 filed on Feb. 23, 2011, and is basedupon and claims the benefit of priority of the prior Japanese PatentApplication No. 2010-056703 filed on Mar. 12, 2010, in the JapanesePatent Office, the entire contents of which are incorporated herein byreference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an electronic device, a use restrictionmethod for the electronic device, and a computer-readable recordingmedium.

2. Description of the Related Art

Various use restriction functions are provided even for embeddedmachines such as image forming apparatuses. One representative exampleof a use restriction function is an authentication function (see, forexample, Japanese Laid-Open Patent Publication No. 2009-289164). Forexample, with the authentication function, an unauthorized user can bepartially or completely restricted from using the functions of an imageforming apparatus.

Typically, so-called ready-made structures, which are embedded tomachines beforehand, are used for implementing the use restrictionfunction. Compared to general-purpose computers, implementing a userestriction function unique to the user and the user's situation isparticularly difficult for machines having little degree of freedom forimplementing software.

SUMMARY OF THE INVENTION

The present invention may provide an electronic device, a userestriction method for the electronic device, and a computer-readablerecording medium that substantially eliminate one or more of theproblems caused by the limitations and disadvantages of the related art.

Features and advantages of the present invention are set forth in thedescription which follows, and in part will become apparent from thedescription and the accompanying drawings, or may be learned by practiceof the invention according to the teachings provided in the description.Objects as well as other features and advantages of the presentinvention will be realized and attained by an electronic device, a userestriction method for the electronic device, and a computer-readablerecording medium particularly pointed out in the specification in suchfull, clear, concise, and exact terms as to enable a person havingordinary skill in the art to practice the invention.

To achieve these and other advantages and in accordance with the purposeof the invention, as embodied and broadly described herein, anembodiment of the present invention provides an electronic deviceincluding: a display part; a system control part configured to designatea display target to be displayed by the display part and switch thedisplay target to another display target; a display control partconfigured to instruct the display part to display an operation screencorresponding to the display target designated by the system controlpart; and a receiving part configured to receive a request forinitiating an exclusive use of the display part from a use restrictionapplication and receive a request for terminating the exclusive use ofthe display part from the use restriction application; wherein in a casewhere the receiving part receives the request for initiating theexclusive use of the display part, the system control part is configuredto cease switching the display target to the other display target untilthe receiving part receives the request for terminating the exclusiveuse of the display part.

Other objects, features and advantages of the present invention willbecome more apparent from the following detailed description when readin conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram illustrating a hardware configuration ofan image forming apparatus according to an embodiment of the presentinvention;

FIG. 2 is a schematic diagram illustrating a software configuration ofan image forming apparatus according to an embodiment of the presentinvention;

FIG. 3 is a sequence diagram for describing processes of a userestriction operation by a main body authentication part according to anembodiment of the present invention;

FIG. 4 is a table illustrating an example of screen data managed by apanel control part according to an embodiment of the present invention;and

FIG. 5 is a sequence diagram for describing processes of a userestriction operation in a case where a use restriction application isinstalled in an image forming apparatus according to an embodiment ofthe present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Next, embodiments of the present invention are described with referenceto the accompanying drawings.

In the following embodiments, an image forming apparatus (e.g.,multi-function machine, laser printer) is described as an example of anelectronic device. It is, however, to be noted that the electronicdevice is not limited to an image forming apparatus. For example, theelectronic device may also be various household electrical appliances.

FIG. 1 is a schematic diagram illustrating a hardware configuration ofan image forming apparatus 10 according to an embodiment of the presentinvention. In FIG. 1, the image forming apparatus 10 includes hardwaresuch as a controller 11, a scanner 12, a printer 13, a modem 14, acontrol panel 15, a network interface 16, and an SD card slot 17.

The controller 11 includes, for example, a CPU (Central Processing Unit)111, a RAM (Random Access Memory) 112, a ROM (Read Only Memory) 113, anda HDD (Hard Disk Drive) 114. Various programs and data used by theprograms are recorded in the ROM 113. The RAM 112 is used, for example,as a storage space for loading programs and a work space at which theloaded programs are processed. The CPU 111 achieves various functions ofthe image forming apparatus 10 by processing the programs loaded to theRAM 112. The HDD 114 is for storing various programs and data used bythe programs.

The scanner 12 is for reading out image data from a document. Theprinter 13 is for printing print data to a sheet(s) of printing paper.The modem 14 is for connecting to a telephone line and exchanging(transmitting/receiving) image data by facsimile communications. Thecontrol panel 15 includes an input part (e.g., keys, touch panel) forreceiving input from a user and a display part (e.g., a liquid crystalscreen) for displaying data to the user. The network interface 16 is forconnecting to a wired network and/or a wireless network (e.g., LAN(Local Area Network). The SD card slot 17 is for reading programsrecorded to an SD card 80. In other words, the image forming apparatus10 does not only execute programs recorded in the ROM 113. The imageforming apparatus may also read out programs recorded in the SD card 80,load the programs to the RAM 112, and execute the programs loaded to theRAM 112. Further, other computer-readable recording media such as a USB(universal serial bus) memory or a CD-ROM may be used in addition to oras an alternative of the SD card 80.

FIG. 2 is a schematic diagram illustrating a software configuration ofthe image forming apparatus 10 according to an embodiment of the presentinvention. The image forming apparatus 10 illustrated in FIG. 2includes, for example, a standard application 221, an SDK application223, an SDK platform 224, a control service 225, and a OS (OperatingSystem) 226.

Each of the software programs included in the image forming apparatus 10is activated as a process or a thread by the OS 226.

The standard application 221 is an assembly of application programsimplemented (beforehand during shipping) as a standard to the imageforming apparatus 10. In FIG. 2, a scanner application 2211, a printerapplication 2212, a copier application 2213, and a facsimile application2214 are included in the standard application 221. The scannerapplication 2211 executes scanning jobs. The printer application 2212executes printing jobs. The copier application 2213 executes copyingjobs. The facsimile application 2214 executes facsimile transmittingjobs or facsimile receiving jobs.

The control service 225 includes a group of software modules (softwaremodule group) for achieving functions such as a function commonly usedby each application, a function for controlling operations of eachapplication, a function for controlling various hardware resources andthe like. In FIG. 2, a system control part 2251, a panel control part2252, and a main body authentication part 2253 are provided as parts ofthe control service 225. In this embodiment, the system control part2251 controls switching of operation screens of applications that are tobe displayed (operated at) on the control panel 15. The application(technically, the operation screen of an application) that is to bedisplayed (operated at) on the control panel 15 is referred to as adisplay target (operation target). In this embodiment, two or moreoperation screens (applications) cannot be simultaneously displayed onthe same control panel 15. Here, the applications include both thestandard application 221 and the SDK application 223. Therefore, in acase where there is an operation screen of an application to bedisplayed on the control panel 15, the application is either thestandard application 221 or the SDK application 223.

The panel control part 2252 instructs the displaying of an operationscreen corresponding to each application to the control panel 15 inaccordance with a switching instruction from the system control part2251. The main body authentication part 2253 achieves a ready-made userestriction function that is embedded beforehand to the image formingapparatus 10. More specifically, the main body authentication part 2253executes authentication of the user of the image forming apparatus 10and permits the use of predetermined applications or the like toauthenticated users only. Although detailed description is omitted, themain body authentication part 2253 can be customized. For example, aserver that is used as an authentication engine can be switched. Thescope for the customization is limited to a predetermined scope(predetermined setting items).

The SDK application 223 is an application program that is additionallyinstalled to the image forming apparatus 10 after shipping of the imageforming apparatus 10. That is, the SDK application 223 serves as aplug-in for expanding the functions of the image forming apparatus 10.In this embodiment, the SDK application 223 is implemented with Java(Registered Trademark) and is distributed in the format of anintermediate code (execution code). The intermediate code is referred toas Java (Registered Trademark) bytecode. Further, the SDK application223 is used via a display component (GUI (Graphic User Interface))displayed on a display part (e.g., screen) of the control panel 15. InFIG. 2, the SDK application 223 includes, for example, a use restrictionapplication 223 a, a B application 223 b, and a C application 223 c. Theuse restriction application 223 a is an SDK application 223 implementedwith a use restriction function that is unique to the user. The userestriction function that is unique to the user is a use restrictionfunction that does not use the main body authentication part 2253. Thedegree of freedom regarding implementation of the SDK application 223 issignificantly high compared to the degree of freedom regardingcustomization of a ready-made function of the image forming apparatus10. Therefore, the content of the use restriction function of the userestriction application is not limited in particular. In thisembodiment, the use restriction application 223 a is an SDK application223 implemented with an authentication function that is unique to theuser.

The SDK platform 224 provides an environment for executing the SDKapplication 223. That is, the SDK platform 224 is an applicationplatform of the SDK application 223. Each SDK application 223 isdeveloped by using an API (Application Program Interface) provided bythe SDK platform 224. The API of the SDK platform 224 is publiclyavailable. Thus, the SDK application 223 can be developed by, forexample, third party vendors. Specifically, the API is a group of, forexample, functions and methods. In a broad sense, structures that reportasynchronously occurring events to the SDK application 23 may also beincluded as an API.

From a standpoint of the control service 225, the SDK platform 224 isregarded as a single application equivalent to each standard application221. More specifically, each standard application 221 is activated as anindependent process by the OS 226. The SDK platform 224 is alsoactivated as an independent process by the OS 226. Therefore, from thestandpoint of the control service 225, each standard application andeach SDK platform 224 is regarded as a process.

On the other hand, each SDK application 223 is activated as a threadinside the SDK platform 224. In other words, a thread is generated foreach SDK application 223.

As described above, the SDK platform 224 hides (conceals) the SDKapplication 223 from the control service 225. Therefore, the controlservice 225 cannot directly control each SDK application 223. Only theSDK platform 224 can directly control each SDK application 223. The SDKplatform 224 also hides (conceals) the control service 225 from each SDKapplication 223.

Next, processes performed by the image forming apparatus 10 according toan embodiment of the present invention are described. First, a userestriction operation performed by the main body authentication part2253 is described. FIG. 3 is a sequence diagram for describing processesof the use restriction operation by the main body authentication part2253. The processes illustrated in FIG. 3 are executed in a state wherethe use restriction application 223 a is not installed in the imageforming apparatus 10.

With reference to FIG. 3, when the image forming apparatus 10 isactivated, each module of the control service 225 (system control part2251, panel authentication part 2252, main body authentication part2253), the standard application 221, and the SDK platform 224 areactivated in this order as processes by the OS 226. Among the SDKapplications 223 installed in the image forming apparatus 10, the SDKapplication 223 being set with automatic activation, is activated as athread by the SDK platform 224. It is to be noted that SDK application223 may be set with automatic activation or manual activation. In thisembodiment, automatic activation is a type of activation in which acorresponding SDK application 223 is automatically activated when theimage forming apparatus 10 is activated. In this embodiment, manualactivation is a type of activation in which a corresponding SDKapplication 223 is activated according to an instruction input by theuser via a management screen displayed in the control panel 15 inaccordance with the SDK platform 224.

Each standard application 221 and the SDK platform 224 register theirapplication ID (i.e. identification data being fixed to each standardapplication 221 and the SDK platform 224) and their process ID (i.e.identification data for communicating between processes) to the systemcontrol part 2251 (Step S101).

Then, each standard application 221 and the SDK platform 224 registertheir application ID and their screen data (i.e. data of a screen foroperating each standard application 221 and the SDK platform 224) to thepanel control part 2252 (Step S102). The panel control part 2252 managesthe screen data in correspondence with the application ID. As a result,data can be managed by the panel control part 2252 in a mannerillustrated in FIG. 4.

FIG. 4 is a table illustrating an example of screen data managed by thepanel control part 2252. As illustrated in FIG. 4, the panel controlpart 2252 manages the screen data of the standard application 221 incorrespondence with the application ID of the standard application 221.In a case where one of the SDK applications 223 is to be displayed, theSDK platform 224 registers the screen data of the SDK application 223 tobe displayed. That is, the screen data of the SDK platform 224 areupdated whenever one SDK application 223 to be displayed is switched toanother SDK application 223 to be displayed. As illustrated in FIG. 4,the term “active” indicates that the SDK application 223 is in a stateto be displayed (display target). In Step S102, the screen data to beregistered by the SDK platform 224 may be the screen data of the SDKapplication 223 having highest display priority (i.e. screen data of theSDK application 223 to be displayed with highest priority according to apredetermined priority order) among the automatically activated SDKapplications 223. Alternatively, the screen data registered by the SDKplatform 224 may be blank.

The switching of active applications is not only performed upon(immediately after) activation of the image forming apparatus 10. Thatis, the switching of active applications is also performed on and afterStep S111. Active applications can be switched by operating the hardkeys (hereinafter also referred to as “function selection keys”)arranged on the control panel 15. The function selection keys areprovided in correspondence with the standard applications 221 and theSDK platform 224. Therefore, in this embodiment, the control panel 15includes five function selection keys.

In Step S111, the system control part 2251 requests transition(switching) to a display state to the standard application 221 or theSDK platform 2224 that is to become a display target. The display targetthat is displayed immediately after activation of the image formingapparatus 10 is determined according to a predetermined priority orderthat is set beforehand to the system control part 2251. Further, in acase of switching from one active application to another, an applicationcorresponding to the function selection key pressed by the user becomesthe display target. The pressing of the function selection key isdetected by the panel control part 2252. The panel control part 2252associates key codes of the function selection keys with the applicationIDs of each application beforehand and manages the key codes of thefunction selection keys in correspondence with the application IDs ofeach application. Accordingly, by referring to a key code of thefunction selection key pressed by the user, the application IDcorresponding to the key code can be identified. The panel control part2252 reports the system control part 2251 of the identified applicationID. Thereby, in accordance with the report from the panel control part2252, the system control part 2251 can identify the application forrequesting transition (switching) to the display target (display targettransition request).

In a case where the standard application 221 or the SDK platform 224receiving the display target transition request from the system controlpart 2251 is capable of making the transition to a display state (i.e.becoming a display target), the standard application 221 or the SDKplatform 224 sends a response to the system control part 2251 acceptingthe request (Step S112). Whether the standard application 221 or the SDKplatform 224 is capable of becoming a display target is determinedaccording to, for example, the status of the hardware resources used bythe standard application 221 and the SDK platform 224.

When the system control part 2251 receives the response of accepting thedisplay target transition request, the system control part 2251designates the application ID of the display target along withrequesting the panel control part 2252 to display the screen of theapplication corresponding to the designated application ID (Step S113).Based on the designated application ID received together with thedisplay request, the panel control part 2252 instructs the control panel15 to display the operation screen of the application corresponding tothe designated application ID (Step S114). Therefore, the control panel15 displays the operation screen of the standard application 221 or theoperation screen of one of the SDK applications 223.

It is to be noted that, in Step S112, the system control part 2251 doesnot switch the display target in a case where the system control part2252 receives a response denying the display target request. However,immediately after the activation of the image forming apparatus 10, thesystem control part 2251 repeats the processes on and after Step S111with respect to the standard application 221 that is next on thepredetermined priority order.

Meanwhile, in the case where the standard application 221 or the SDKplatform 224 accepts the display target request, the standardapplication 221 or the SDK platform 224 sends a log-in display requestto the main body authentication part 2253 after sending a responseaccepting the display target transition request to the system controlpart 2251 (Step S115). In accordance with the log-in display request,the main body authentication part 2253 instructs the panel control part2252 that a log-in screen is to be displayed on the control panel 15(Step S116). The panel control part 2252, in response to the instructionfrom the main body authentication part 2253, instructs the control panel15 to display a log-in screen in a manner superposed on the operationscreen displayed in Step S114 (Step S117). The log-in screen isrecognized as a special screen by the panel control part 2252.Therefore, even if an operation screen is being displayed in the controlpanel 15, the panel control part 2252 instructs the control panel 15 todisplay the log-in screen in a manner superposed on the operationscreen. By superposing the log-in screen on the operation screen, theuser is unable to use the application (e.g., standard application)corresponding to the operation screen displayed on the control panel 15.Thereby, a use restriction state of the image forming apparatus 10 isachieved.

Then, after the user inputs user data (e.g., user name and password) tothe log-in screen displayed in control panel 15 (Step S118), the panelcontrol part 2252 reports the user data to the main body authenticationpart 2253 having control over the log-in screen (Step S119). The mainbody authentication part 2253 performs an authentication process basedon the user data (Step S120). In a case where the authentication is asuccess (i.e. user data is approved, authentication OK), the main bodyauthentication part 2253 reports the success of the authenticationprocess to the standard application 221 or the SDK platform 224 fromwhich the log-in display request originated (Step S121).

Then, the standard application 221 or the SDK platform 224 havingreceived the report of the success of the authentication process sends alog-in screen deletion request (i.e. a request for deleting the log-inscreen) to the main body authentication part 2253 (Step S122). Inaccordance with the request from the standard application 221 or the SDKplatform 224, the main body authentication part 2253 requests the panelcontrol part 2252 that the log-in screen is to be deleted from thecontrol panel 15 (Step S123). Then, in accordance with the request fromthe main body authentication part 2253, the panel control part 2252deletes the log-in screen from the control panel 15 (i.e. cancelsdisplaying of the log-in screen). As a result, the user is able to usethe standard application 221 or the SDK application via thecorresponding operation screen displayed by the Step S114. In otherwords, the use restriction state of the image forming apparatus 10 isreleased.

It is to be noted that, in a case of performing the processes on orafter Step S111 after the successful authentication process (i.e. in acase where the function selection key is pressed after the successfulauthentication process), the main body authentication part 2253 mayreport the success of the authentication process without instructing thedisplaying of the log-in screen (Step S121). However, in a case wherethe log-in screen is desired to be displayed in correspondence with eachstandard application 221 or the SDK platform 224, the processes on orafter Step S111 are repeated as described above.

Next, a use restriction operation performed in a case where the userestriction application 223 a is installed is described. FIG. 5 is asequence diagram for describing processes of the use restrictionoperation in the case where the use restriction application 223 a isinstalled. In FIG. 5, the processes performed in Steps S101 and S102 areomitted. In other words, the processes of Steps S101 and S102 areperformed even in the case where the use restriction application isinstalled.

When the SDK platform 224 is activated, the use restriction application223 a sends an authentication substitute request (a request forauthentication substitution) to the SDK platform 224 (Step S201). Morespecifically, the request for authentication substitution is a requestfor the SDK platform 224 to substitute the main body authentication part2253 for achieving the use restriction function. In this embodiment, theuse restriction application 223 a is set with the above-describedautomatic activation. Accordingly, in Step S201, the process of sendingthe authentication substitute request is performed when the SDK platform224 is activated upon the activation of the image forming apparatus 10.

Then, the SDK platform 224 sends the authentication substitute requestto the main body authentication part 2253 (Step S202). A designation ofthe application ID of the SDK platform 224 is included in theauthentication substitute request. In a case where the main bodyauthentication part 2253 receives the authentication substitute request,the main body authentication part 2253 invalidates its own userestriction function. For example, supposing that the main bodyauthentication part 2253 receives a log-in screen display request, themain body authentication part 2253 does not instruct to display thelog-in screen and reports success of the authentication process inresponse to the log-in display request.

Then, the SDK platform 224 designates the application ID according tothe designation included in the authentication substitute request andreports to the system control part 2251 that authentication substitutionis going to be performed (Step S203). The system control part 2251stores the designated application ID as the identification data of theentity which is going to perform the authentication substitution(authentication substitution entity).

Meanwhile, after requesting the authentication substitution to the SDKplatform 224, the use restriction application 223 a designates its ownidentification data (hereinafter also referred to as “SDK applicationID”) and requests registration of its own screen data to the SDKplatform 224 (Step S204). The SDK platform 224 designates its ownapplication ID and requests registration of the screen data of the userestriction application 223 a to the panel control part 2252 (StepS205). It is to be noted that the SDK platform 224 manages screen datain correspondence with the SDK application data. Further, the process ofStep S205 may be performed as the process of Step S102 illustrated inFIG. 3.

Further, the use restriction application 223 a designates its ownidentification data (SDK application ID) and sends a screen lock request(a request for locking a screen) to the SDK platform 224 (Step S206).More specifically, the screen lock request is a request for exclusiveuse of the display part of the control panel 15. The screen lock is astate where transition of screens (display targets) is prevented fromoccurring. The SDK platform 224 stores the designated SDK application IDincluded in the screen lock request as the origin of the screen lockrequest.

Then, the system control part 2251 sends a display target transitionrequest to the SDK platform 224 (Step S207). The process performed inStep S207 corresponds to the process performed in Step S111 (see FIG.3). However, in the operation illustrated in FIG. 5, screen data are notdisplayed in an order starting from the screen data having highestdisplay priority. In the operation illustrated in FIG. 5, the displaytarget is the SDK platform registered as the authentication substitutionentity. That is, in a case where an authentication substitution entityis registered, the system control part 2251 displays screen data of theauthentication substitution entity rather than displaying screen data ofthe application having highest priority order.

In a case where the SDK platform 224 receiving the display targettransition request from the system control part 2251 is capable ofmaking the transition to a display state (i.e. becoming a displaytarget), the SDK platform 224 sends a response to the system controlpart 2251 accepting the request (Step S208). When the system controlpart 2251 receives the response of accepting the display targettransition request, the system control part 2251 designates theapplication ID of the display target (in this case, application ID ofthe SDK platform 224) along with requesting the panel control part 2252to display the screen of the application corresponding to the designatedapplication ID (Step S209). Based on the designated application IDreceived together with the display request, the panel control part 2252instructs the control panel 15 to display the operation screen of theapplication corresponding to the designated application ID (Step S210).Therefore, in this case, the control panel 15 displays the operationscreen of the use restriction application 223 a based on the screen dataregistered (in Step S205) in correspondence with the application ID ofthe SDK platform 224.

The content of the operation screen depends on the implementation of theuse restriction application 223 a. Further, the user restrictionapplication 223 a itself is merely one of the SDK applications 223.Therefore, the use restriction state of the image forming apparatus 10cannot be achieved by merely displaying the operation screen of the userestriction application 223 a because the operation screen of thestandard application 211, for example, would be displayed if thefunction selection key is pressed. However, in this operation, screenlock is requested by the use restriction application in Step S206.Therefore, as described in detail below, the use restriction state ofthe image forming apparatus 10 is achieved in accordance with the screenlock request and the actions taken by the system control part 2251.

More specifically, in a case where the user presses a function selectionkey to switch from, for example, one standard application 211 to anotherstandard application 211, the system control part 2251 sends a displaytarget release request (a request for releasing a locked state of thedisplay target) to the SDK platform 224 (Step S211). More specifically,the display target release request is to turn over the position of adisplay target to another application. The position of a display targetis a position of exclusively using the display part of the control panel15. In the case of receiving the display target release request wherescreen lock is requested, the SDK platform 224 sends a response denyingthe release of the display target (Step S212). In such case where thedisplay target release request is denied, the system control part 2251does not switch the display target. In other words, the processesperformed on and after Step S111 in FIG. 3 are not performed when thedisplay target release request is denied. Accordingly, until the userestriction application 223 a releases the screen lock, the operationscreen of the use restriction application 223 a remains displayed on thedisplay part of the control panel 15. In other words, the userestriction state with respect to other applications is achieved.

In this embodiment, the use restriction application 223 a is implementedwith an authentication function unique to the user. Therefore, theoperation screen of the use restriction application 223 a is anoperation screen compatible to the authentication function unique to theuser. The operation screen of the use restriction application 223 a maybe, for example, a screen to which a periodically changing password isinput.

When the user inputs a password to the operation screen of the userestriction application 223 a, the panel control part 2252 reports thepassword to the SDK platform 224 having control over the operationscreen of the use restriction application (Step S213). Technically, theuse restriction application 223 a has control over the operation screenof the use restriction application. However, from the perspective of thepanel control part 2252, the SDK platform 224 has control over theoperation screen of the use restriction application (See FIG. 4).

Then, the SDK platform 224 reports the password to the use restrictionapplication being the current display target (Step S214). The userestriction application 223 a performs an authentication process basedon the password reported from the SDK platform (Step S215). In a casewhere the authentication is a success (i.e. password is approved,authentication OK), the use restriction application 223 a designates itsown SDK application ID and requests the release of its locked screen tothe SDK platform 224 (Step S216). That is, the use restrictionapplication 223 a requests to the SDK platform 224 that the exclusiveuse of the display part of the control panel 15 is to be terminated. Ina case where the designated SDK application ID matches the SDKapplication ID stored as the origin of the screen lock request, the SDKplatform 224 releases the lock of the screen. Accordingly, in a casewhere a function selection key is pressed in the state where the lock ofthe screen is released, the processes to be performed on or after StepS111 can be performed. However, because the use restriction function ofthe main body authentication part 2253 is in an invalidated state, theprocesses of Steps S116 through S120 are not performed. Therefore, theuser can use other standard applications 221 or the like. In otherwords, the use restriction state of the image forming apparatus 10 isreleased.

It is to be noted that, in a case where the authentication process ofStep S215 fails, the use restriction application 223 a does not requestthe release of the lock of the screen. Accordingly, the use restrictionstate is maintained.

Then, the use restriction application 223 a sends a display targetabandon request to the SDK platform 224 (Step S217). The display targetabandon request is a request indicating the abandonment of the positionof the display target. Then, the SDK platform 224 designates its ownapplication ID and requests abandonment of the display target to thesystem control part 2251 (Step S218). In response to the request fromthe SDK platform 224, the system control part 2251 performs theprocesses to be performed on and after Step S111 (see FIG. 3). In thisstate, the display target is selected according to the predeterminedpriority order. Accordingly, because the SDK application 223 is capableof actively abandoning the position of the display target, transition ofthe operation screen can be automatically executed in correspondencewith the release of the use restriction state.

Then, when a log-out key of the control panel 15 is pressed, the panelcontrol part 2252 detects the pressing of the log-out key (log-outpressing incident). In response to the log-out pressing incident, thepanel control part 2252 reports the log-out to the main bodyauthentication part 2253 (Step S251). Then, the main body authenticationpart 2253 reports the log-out to the SDK platform 224 of theauthentication substitute entity (Step S252). The SDK platform 224registers screen data of the use restriction application 223 a (StepS253). Then, the processes to be performed on or after Step S207 areperformed. Then, the operation screen of the use restriction application223 a is displayed again on the control panel 15. In other words, theuse restriction state of the image forming apparatus 10 reemerges.

It is to be noted that, the reason that the SDK platform 224re-registers the screen data of the use restriction application 223 a inStep S253 is because screen data of other SDK applications 223 may beregistered in the panel control part 2252 during the period in which theuse restriction is released.

Hence, with the above-described embodiments of the present invention,the SDK platform 224 is capable of accepting the authenticationsubstitution request, the screen lock request, the screen lock releaserequest, and the display target abandon request. That is, the SDKplatform 224 has an API (Application Programming Interface) such asmethods and functions for accepting each of the authenticationsubstitution request, the screen lock request, the screen lock releaserequest, and the display target abandon request. Therefore, byimplementing the SDK application 223 using the API, the use restrictionfunction unique to the user (e.g., use restriction application 223a) canbe achieved.

In the above-described embodiments of the present invention, the type ofuse restriction is not to be limited to authentication. An SDKapplication having a given function can be discretionally determined bythe user by using the API corresponding to the authenticationsubstitution request, the screen lock request, the screen lock releaserequest, and the display target abandon request. For example, the usercan restrict the use of the image forming apparatus 10 during apredetermined time period by preventing the use restriction application223 a from requesting the lock release until a predetermined timearrives.

The present invention is not limited to the specifically disclosedembodiments, and variations and modifications may be made withoutdeparting from the scope of the present invention.

What is claimed is:
 1. An electronic device comprising: a processor; anda memory that contains instructions including: a storage module thatstores a plurality of application programs, each of the plurality ofapplication programs capable of requesting the electronic device toexecute a process and making a transition to a display state, theplurality of application programs including first and second applicationprograms, each of the plurality of application programs is associatedwith screen data of a hardware resource including information indicatingwhether the application programs are active, a display module thatdisplays a display target, a receiving module that receives a requestfrom a use restriction application that is not stored in the storagemodule, the request indicating that the display target be switched toanother display target, a system control module that designates thefirst application program corresponding to the display target andswitches the display target to another display target by designating thesecond application program, the second application program being aprogram that is different from the first application program, a displaycontrol module that instructs the display module to display an operationscreen based on screen data corresponding to the first applicationprogram designated by the system control module, and a determiningmodule that determines whether the switching is possible depending onwhether screen data corresponding to the second application program isstored as a screen data of an active application, wherein when thescreen data corresponding to the second application program isdetermined to be the screen data of the active application, thedetermining module is configured to determine that the switching ispossible, wherein in a case where the determining module determines thatthe switching is possible, the display control module instructs thedisplay module to display another operation screen based on the screendata corresponding to the second application program designated by thesystem control module.
 2. The electronic device as claimed in claim 1,wherein the determining module is configured to determine whether theswitching is possible based on a status of a hardware resource used bythe display target.
 3. The electronic device as claimed in claim 1,wherein the system control module is configured to cease switching thedisplay target to the other display target until the receiving modulereceives a request for terminating the displaying of the operationscreen from the use restriction application.
 4. The electronic device asclaimed in claim 1, wherein the system control module is configured toswitch the display target to another display target according to apredetermined priority order.
 5. The electronic device as claimed inclaim 1, wherein the instructions cause the processor to function as: aninput module that receives user data from a user; and an authenticatingmodule configured to authenticate the user data; wherein the systemcontrol module is configured to switch the display target to anotherdisplay target according to the authentication by the authenticatingmodule.
 6. The electronic device as claimed in claim 1, wherein thedetermining module is configured to determine whether the switching ispossible based on a status of a hardware resource that is used accordingto the process requested to be executed by one of the plurality ofapplication programs.
 7. A method for restricting use of an electronicdevice including a display part, the electronic device being capable ofinstalling a plurality of application programs, the method comprisingthe steps of: storing a plurality of application programs, each of theplurality of application programs capable of requesting the electronicdevice to execute a process and making a transition to a display state,the plurality of application programs including first and secondapplication programs, each of the plurality of application programs isassociated with screen data of a hardware resource including informationindicating whether the application programs are active; a) designatingthe first application program of a display target to be displayed by thedisplay part; b) switching the display target to another display targetby designating the second application program, the second applicationprogram being a program that is different from the first applicationprogram; c) instructing the display part to display an operation screenbased on screen data corresponding to the first application programdesignated in step a); d) receiving a request for the switching of stepb) from a use restriction application that is not stored in theelectronic device; e) determining whether the switching of step b) ispossible depending on whether screen data corresponding to the secondapplication program is stored as a screen data of an active application;and f) instructing the display part to display another operation screenbased on the screen data corresponding to the second application programin a case where the switching of step b) is determined in step e) to bepossible.
 8. The method as claimed in claim 7, wherein the determiningof step e) includes determining whether the switching of step b) ispossible based on a status of a hardware resource used by the displaytarget.
 9. The method as claimed in claim 7, further comprising a stepof: ceasing the switching of step b) until a request for terminating thedisplaying of the operation screen is received from the use restrictionapplication.
 10. The method as claimed in claim 7, wherein the switchingof step b) includes switching the display target to another displaytarget according to a predetermined priority order.
 11. The method asclaimed in claim 7, further comprising: g) receiving user data from auser; and h) authenticating the user data; wherein the switching of stepb) includes switching the display target to another display targetaccording to the authenticating of step h).
 12. The method as claimed inclaim 7, wherein the determining of step e) includes determining whetherthe switching of step b) is possible based on a status of a hardwareresource that is used according to the process requested to be executedby one of the plurality of application programs.
 13. A non-transitorycomputer-readable recording medium on which a program is recorded forcausing an electronic device including a display part to execute aprocess, the process comprising the steps of: storing a plurality ofapplication programs, each of the plurality of application programscapable of requesting the electronic device to execute a process andmaking a transition to a display state, the plurality of applicationprograms including first and second application programs, each of theplurality of application programs is associated with screen data of ahardware resource including information indicating whether theapplication programs are active, a) designating the first applicationprogram of a display target to be displayed by the display part; b)switching the display target to another display target by designatingthe second application program; c) instructing the display part todisplay an operation screen based on screen data corresponding to thefirst application program designated in step a); d) receiving a requestfor the switching of step b) from a use restriction application that isnot stored in the electronic device; and e) determining whether theswitching of step b) is possible depending on whether screen datacorresponding to the second application program is stored as a screendata of an active application; and f) instructing the display part todisplay another operation screen based on another screen datacorresponding to the second application program in a case where theswitching of step b) is determined in step e) to be possible.
 14. Thenon-transitory computer-readable recording medium as claimed in claim13, wherein the determining of step e) includes determining whether theswitching of step b) is possible based on a status of a hardwareresource used by the display target.
 15. The non-transitorycomputer-readable recording medium as claimed in claim 13, wherein themethod further comprises a step of: ceasing the switching of step b)until a request for terminating the displaying of the operation screenis received from the use restriction application.
 16. The non-transitorycomputer-readable recording medium as claimed in claim 13, wherein theswitching of step b) includes switching the display target to anotherdisplay target according to a predetermined priority order.
 17. Thenon-transitory computer-readable recording medium as claimed in claim13, wherein the method further comprises the steps of: g) receiving userdata from a user; and h) authenticating the user data; wherein theswitching of step b) includes switching the display target to anotherdisplay target according to the authenticating of step h).
 18. Thenon-transitory computer-readable recording medium as claimed in claim10, wherein the determining of step e) includes determining whether theswitching of step b) is possible based on a status of a hardwareresource that is used according to the process requested to be executedby one of the plurality of application programs.